package com.contract.pojo.dto;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDate;
import java.util.List;

/**
 * Created with IntelliJ IDEA.
 *
 * @author liw
 * @version 1.0
 * @date 2024/2/6 17:52
 */
@Data
public class ContractViewDto {

    private static final long serialVersionUID = -1L;

    @ApiModelProperty(value = "用户姓名")
    @TableField(value = "USER_NAME")
    private String userName;

    @ApiModelProperty(value = "卡号")
    @TableField(value = "CARD_NO")
    private String cardNo;

    @ApiModelProperty(value = "正面")
    @TableField(value = "CARD_FACE")
    private Long cardFace;

    @ApiModelProperty(value = "背面")
    @TableField(value = "CARD_BACK")
    private Long cardBack;


    @TableId(type = IdType.AUTO, value = "ID")
    @ApiModelProperty(value = "主键")
    private Long id;

    /**
     * The start（有效期开始）
     */
    @TableField(value = "START", updateStrategy = FieldStrategy.IGNORED)
    private LocalDate start;

    /**
     * The end（有效期截至）
     */
    @TableField(value = "END", updateStrategy = FieldStrategy.IGNORED)
    private LocalDate end;

    /**
     * The name（名称）
     */
    @TableField(value = "NAME", updateStrategy = FieldStrategy.IGNORED)
    private String name;

    /**
     * The user id（用户主键）
     */
    @TableField(value = "USER_ID", updateStrategy = FieldStrategy.IGNORED)
    private Long userId;

    /**
     * The pdf id（文件主键）
     */
    @TableField(value = "PDF_ID", updateStrategy = FieldStrategy.IGNORED)
    private Long pdfId;

    /**
     * The face id（文件主键）
     */
    @TableField(value = "FACE_ID", updateStrategy = FieldStrategy.IGNORED)
    private Long faceId;

    /**
     * The sign face id（文件主键）
     */
    @TableField(value = "SIGN_ID", updateStrategy = FieldStrategy.IGNORED)
    private Long signId;

    /**
     * The state（状态）
     */
    @TableField(value = "STATE", updateStrategy = FieldStrategy.IGNORED)
    private String state;

}
